package com.qms.qep.service;

import java.util.List;
import java.util.Map;
import com.qms.qep.domain.Parameter;

/**
 * 参数管理Service接口
 * 
 * @author qms
 */
public interface IParameterService 
{
    /**
     * 查询参数
     * 
     * @param id 参数主键
     * @return 参数
     */
    public Parameter selectParameterById(Long id);

    /**
     * 查询参数列表
     * 
     * @param parameter 参数
     * @return 参数集合
     */
    public List<Parameter> selectParameterList(Parameter parameter);

    /**
     * 新增参数
     * 
     * @param parameter 参数
     * @return 结果
     */
    public int insertParameter(Parameter parameter);

    /**
     * 修改参数
     * 
     * @param parameter 参数
     * @return 结果
     */
    public int updateParameter(Parameter parameter);

    /**
     * 批量删除参数
     * 
     * @param ids 需要删除的参数主键集合
     * @return 结果
     */
    public int deleteParameterByIds(Long[] ids);

    /**
     * 删除参数信息
     * 
     * @param id 参数主键
     * @return 结果
     */
    public int deleteParameterById(Long id);
    
    /**
     * 根据产品ID查询参数列表
     * 
     * @param productId 产品ID
     * @return 参数集合
     */
    public List<Parameter> selectParametersByProductId(Long productId);
    
    /**
     * 获取参数类型选项
     * 
     * @return 参数类型选项
     */
    public List<Map<String, Object>> getParameterTypeOptions();
} 